Apparatus and method for maintaining a message thread with opt-in permanence for entries

ABSTRACT

A server includes a message thread module with instructions executed by a processor to maintain a message thread between a first user and a second user. Each entry of the message thread is deleted after a display period unless an indication regarding the entry is received during the display period.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.13/906,261 filed May 30, 2013, the contents of which are incorporatedherein by reference.

FIELD OF THE INVENTION

This invention relates generally to communications in a networkedenvironment. More particularly, this invention relates to maintaining amessage thread with opt-in permanence for entries.

BACKGROUND OF THE INVENTION

Communications between individuals are increasingly digitized andtransmitted via the Internet. Individuals are communicating through textmessages, email messages, voice mail messages and the like. In the caseof a text message between two individuals a conversation thread ismaintained. Each individual contributes text to a chronologically listedrecord of the communications between the two individuals. With each newcommunication, a new entry is added to the communication thread. Eitherindividual can review the conversation thread at any time and edit itlocally in the messaging client.

Maintaining a complete and precise record of a sequence of communicationmay inhibit the spontaneity of an interaction. For example, when one hasa conversation with an individual, it is typically not recorded andtherefore the exchange may be more candid.

A live conversation between two individuals may be memorialized withnotes, but in this case there is visual feedback indicating when oneindividual is recording information, which allows the other individualto clarify a point or otherwise alter the direction of the conversation.

Storing the entire contents of a digital conversation may also make itdifficult to surface the most important information. It is a case ofinformation overload. Selectively saving certain communications in anephemeral conversation thread allows the user to quickly recall orreference important aspects of the thread.

In view of the foregoing, it would be desirable to have a digitalcommunication mechanism that more naturally mimics the types ofinteractions to which individuals are accustomed.

SUMMARY OF THE INVENTION

A server includes a message thread module with instructions executed bya processor to maintain a message thread between a first user and asecond user. Each entry of the message thread is deleted after a displayperiod unless an indication regarding the entry is received during thedisplay period.

BRIEF DESCRIPTION OF THE FIGURES

The invention is more fully appreciated in connection with the followingdetailed description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates a system configured in accordance with an embodimentof the invention.

FIG. 2 illustrates message generation processing utilized in accordancewith an embodiment of the invention.

FIG. 3 illustrates message consumption processing utilized in accordancewith an embodiment of the invention.

FIG. 4 illustrates message thread review processing utilized inaccordance with an embodiment of the invention.

FIG. 5 illustrates a first message thread displayed in accordance withan embodiment of the invention.

FIG. 6 illustrates the message thread of FIG. 5 with altered parametersassociated with entries of the message thread.

Like reference numerals refer to corresponding parts throughout theseveral views of the drawings.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a system 100 configured in accordance with anembodiment of the invention. The system 100 includes a set of clientdevices 102_1 through 102_N and at least one server 104 connected via anetwork 106, which may be any wired or wireless network.

Each client device 102 may be a computer, tablet, Smartphone and thelike with standard components, such as a central processing unit 110connected to input/output devices 112 via a bus 114. The input/outputdevices 112 may include a touch display, keyboard, mouse and the like. Anetwork interface circuit 116 is also connected to the bus 114 toprovide connectivity with network 106.

A memory 120 is also connected to the bus 114. The memory 120 storesstandard components, such as a communication module 122. Thecommunication module 122 may be a text message module that supportsShort Message Service (SMS) texting. Alternately, the communicationmodule 122 may be a browser, which supports access to an email server.Alternately, the communication module 122 may be a telephony interfacethat supports telephone interactions, such as voice messages.

Server 104 also includes standard components, such as a centralprocessing unit 160 connected to input/output devices 164 via a bus 162.A network interface circuit 166 is also connected to the bus 162.Further, a memory 170 is connected to the bus 162. The memory 170 storesmodules of executable instructions to implement disclosed operations.For example, the memory 170 may store a message thread module 172, whichmaintains a thread of communications between at least two individuals.The thread of communications may be a text message thread, an email witha sequence of returned communications or a voice mail file with asequence of returned communications.

The configuration of system 100 is exemplary. The system 100 may includemultiple servers 104 and a variety of communication devices to supportvarious forms of digital communication.

FIG. 2 illustrates processing operations associated with an embodimentof the message thread module 172. In particular, the figure illustratesmessage generation processing utilized in accordance with an embodimentof the invention. By way of example, operations will be discussed in thecontext of text messaging.

Initially, a transitory display parameter is set 200. The transitorydisplay parameter may be set as a default value (e.g., a 3 secondviewing period) or it may be set through user input. The notionassociated with the transitory display parameter is that all messageentries will be deleted after the transitory display parameter timeexpires and therefore message entries are transitory, unless anindividual opts-in for message entry permanence.

The next operation of FIG. 2 is to collect a text entry 202. The textentry collection process is terminated when an individual indicts thatthe text entry should be sent. At this point it is determined if therewas an indication to save the text entry 204. The indication may be inthe form of a gesture applied to the screen where the text is entered.Alternately, the indication may be based upon a specified key orcombination of keys on a keyboard used to enter the text.

If there is no indication to save the entry (204—No), then the text isdisplayed in the thread associated with the sender and the recipient.When the recipient reads or otherwise consumes the entry, the entry isdeleted from the thread associated with the sender 206.

If there is an indication to save the entry (204—Yes), then the entry isdisplayed in its original form in the thread associated with the senderand the recipient. A check is periodically made to determine if theentry has been read by the recipient 210. If not (210—No), the entrycontinues to be displayed in its original form. If so (210—Yes), indiciaassociated with the thread is altered 212. That is, after the recipientreads the entry the nature of the entry will be altered on the sendingside and the receiving side. If the recipient does not provide anindication to save the entry, then the indicia of the entry on thesending side thread will be altered to indicate that only one of the twoparties (the sender) has saved the entry. If the recipient provides anindication to save the entry, then the indicia of the entry on thesending side and the receiving side is altered to indicate that both ofthe parties have saved the entry. In an alternate embodiment, themessage may be restored in the sender side thread if the recipientprovides an indication to save the message. This restoration in thesender side thread includes indicia that the recipient saved themessage, although the sender originally declined to do so.

The operations of FIG. 2 are performed by the message thread module 172operating in conjunction with a client device 102. That is, operationssuch as collecting a text entry 202 and identifying an indication tosave 204 are performed at the client device 102, with the results of theoperations passed and processed to the message thread module 172.Similarly, the display until consumed operation 206, display operation208 and altering of thread indicia 212 are manifested at the clientdevice 102 in response to information supplied by the message threadmodule 172.

FIG. 3 illustrates message consumption processing operations performedin accordance with an embodiment of the invention. The message threadmodule 127 coordinates the delivery of the text to the recipient 300.The text is displayed for the duration of the transitory displayparameter 302. That is, the message thread module 127 directs the clientdevice 102 to display the text for the duration of the transitorydisplay parameter. Alternately, the text may be displayed until it isactively deleted or the user scrolls past it without saving it.

It is determined whether there is an indication to save the entry 304during the duration of the transitory display parameter. If not(304—No), the message is deleted 306 from the recipient's thread. Threadindicia of the sender is altered, if necessary 308. That is, if thesender elected to preserve the entry, then indicia associated with theentry would be altered to indicate that the sender preserved the entry,but the recipient did not.

If there is an indication to save the entry (304—Yes), the entry issaved in the recipient's thread 310. The thread indicia is altered 312to at least indicate that the recipient has saved the entry. If thesender also saved the entry, then the sender's indicia and therecipient's indicia reflect that both entities have saved the message.

FIG. 4 illustrates thread review processing that may be performed inaccordance with an embodiment of the invention. Initially, a text threadis displayed to a user 400. The text thread is between the user and oneor more other users. As the user scrolls through the text thread,individual entries may be deleted. If so (402—Yes), the individual entryis deleted 404. If necessary, indicia associated with the entry onanother device is altered 406. For example, if another user had savedthe entry and the present user had saved the entry initially, then theindicia associated with the entry on the two client devices wouldindicate that both parties saved the entry. After one party deletes theentry, the indicia associated with the entry for the other partyindicates that only a single party has saved the entry.

FIG. 5 illustrates a client device 102 with a display screen 500 and akeyboard 502. The display screen 500 displays a thread including a firstentry 504 from a first user and a second entry 506 from a second user.The first entry 504 is persisted in response to a gesture applied to thedisplay screen 500. The second entry 506 is also persisted in responseto a gesture applied to the display screen 500.

FIG. 6 illustrates updated indicia indicating different states of entrypreservation. Entry 504′ is in bold to reflect that both the sender andthe recipient persisted the entry. Entry 506′ is italicized to indicatethat the reply was preserved by the recipient, but not the sender.

Thus, in this example, a parameter in the form of varying fonts isaltered to reflect the persistence of an entry. Other parameters may beused, such as a separate graphic indicative of the preservation states.Alternately, the parameter may be in the form of a number where a 1indicates that only the user of the client device has saved the entryand where the number 2 indicates that two parties have saved the entry.Larger numbers may be used in the event of a group message. A text colorscheme may also be used to indicate preservation states.

In one embodiment, the message thread module 172 is configured toeliminate the ability to copy/paste a conversation? This preventsaspects of the conversation from being taken out of context. Inaddition, this feature keeps the record of the “saved” communicationsconsistent.

Thus, it will be appreciated that the disclosed techniques allow for adigital communication mechanism that more naturally mimics the types ofinteractions to which individuals are accustomed. That is, individualutterances (entries) are transitory in nature, unless a user opts-in topreserve an utterance. Opting-in to preserve an utterance may result infeedback that allows a counter-party to know that another has preservedthe entry.

In addition to providing a more natural communication flow, theinvention may provide a more condensed communication thread where onlyperceived important entries are preserved. This can be advantageous inconnection with the use of a mobile device, which has a small screen andtherefore a limited ability to display information. This may also beadvantageous as it reduces the amount of information that needs to becommunicated across a network.

The invention has been disclosed in the context of text communications.However, the same techniques may be applied to email communications orthreaded voicemail or multimedia communications.

An embodiment of the present invention relates to a computer storageproduct with a non-transitory computer readable storage medium havingcomputer code thereon for performing various computer-implementedoperations. The media and computer code may be those specially designedand constructed for the purposes of the present invention, or they maybe of the kind well known and available to those having skill in thecomputer software arts. Examples of computer-readable media include, butare not limited to: magnetic media, optical media, magneto-optical mediaand hardware devices that are specially configured to store and executeprogram code, such as application-specific integrated circuits(“ASICs”), programmable logic devices (“PLDs”) and ROM and RAM devices.Examples of computer code include machine code, such as produced by acompiler, and files containing higher-level code that are executed by acomputer using an interpreter. For example, an embodiment of theinvention may be implemented using JAVA®, C++, or other object-orientedprogramming language and development tools. Another embodiment of theinvention may be implemented in hardwired circuitry in place of, or incombination with, machine-executable software instructions.

The foregoing description, for purposes of explanation, used specificnomenclature to provide a thorough understanding of the invention.However, it will be apparent to one skilled in the art that specificdetails are not required in order to practice the invention. Thus, theforegoing descriptions of specific embodiments of the invention arepresented for purposes of illustration and description. They are notintended to be exhaustive or to limit the invention to the precise formsdisclosed; obviously, many modifications and variations are possible inview of the above teachings. The embodiments were chosen and describedin order to best explain the principles of the invention and itspractical applications, they thereby enable others skilled in the art tobest utilize the invention and various embodiments with variousmodifications as are suited to the particular use contemplated. It isintended that the following claims and their equivalents define thescope of the invention.

The invention claimed is:
 1. A method implemented by a server with aprocessor and a memory storing instructions executed by the processor tomaintain a first message thread and a second message thread between afirst user and a second user by: directing, by the server, a secondclient device to display a text entry of the second message thread for aduration of a transitory display period, wherein the text entry is fromthe first user and is presented on a second display screen associatedwith the second client device of the second user, and wherein the firstuser generates the text entry with a first indication to preserve thetext entry in the first message thread, wherein the first indication isa first gesture applied to a first display screen of a first clientdevice associated with the first user that is received by the server asthe first indication; automatically deleting at the server the textentry of the second message thread for the second user after theduration of the transitory display period unless a second indication ofa second gesture applied to the second display screen presenting thetext entry of the message thread on the second client device associatedwith the second user is received at the server during the transitorydisplay period, in which case the text entry of the message thread ismaintained with altered text indicia by the server for the secondmessage thread and the server provides feedback to the first user thatthe text entry of the second message thread is preserved; and modifying,at the direction of the server, the text entry of the first messagethread associated with the first user on the first display screenassociated with the first user if the server receives the secondindication that the second user applied the second gesture to the seconddisplay screen associated with the second user during the transitorydisplay period, wherein modifying includes the server providing firstindicia indicating that only the first user provided the firstindication and that there was no second indication and therefore onlythe first user preserved the text entry or second indicia in response tothe first indication and the second indication to indicate that both thefirst user and the second user preserved the text entry.
 2. The methodof claim 1 wherein the transitory display period is a single digitnumber of seconds.
 3. A method implemented by a server with a processorand a memory storing instructions executed by the processor to maintaina first message thread and a second message thread between a first userand a second user by: directing, by the server, a second client deviceto display a text entry of the second message thread for a duration of atransitory display period, wherein the text entry is from the first userand is presented on a second display screen associated with the secondclient device of the second user, and wherein the first user generatesthe text entry without a first indication to preserve the text entry, inthe first message thread; automatically deleting at the server the textentry in the first message thread and the text entry of the secondmessage thread after the duration of the transitory display periodunless a second indication of a second gesture applied to the seconddisplay screen presenting the text entry of the message thread on thesecond client device associated with the second user is received at theserver during the transitory display period, in which case the textentry of the message thread is maintained by the server for the secondmessage thread and the server provides feedback to the first user thatthe text entry of the second message thread is preserved; and restoringthe text entry of the first message thread associated with the firstuser on the first display screen associated with the first user if theserver receives the second indication that the second user applied thesecond gesture to the second display screen associated with the seconduser during the transitory display period, wherein the restoringincludes the server providing indicia indicating that only the seconduser provided the second indication.
 4. The method of claim 3 whereinthe transitory display period is a single digit number of seconds.
 5. Asystem comprising: a processor; at least one memory storing instructionsthat when executed, configure the processor to perform operations tomaintain a first message thread and a second message thread between afirst user and a second user, the operations comprising: directing, bythe server, a second client device to display a text entry of the secondmessage thread for a duration of a transitory display period, whereinthe text entry is from the first user and is presented on a seconddisplay screen associated with the second client device of the seconduser, and wherein the first user generates the text entry with a firstindication to preserve the text entry in the first message thread,wherein the first indication is a first gesture applied to a firstdisplay screen of a first client device associated with the first userthat is received by the server as the first indication; automaticallydeleting at the server the text entry of the second message thread forthe second user after the duration of the transitory display periodunless a second indication of a second gesture applied to the seconddisplay screen presenting the text entry of the message thread on thesecond client device associated with the second user is received at theserver during the transitory display period, in which case the textentry of the message thread is maintained with altered text indicia bythe server for the second message thread and the server providesfeedback to the first user that the text entry of the second messagethread is preserved; and modifying, at the direction of the server, thetext entry of the first message thread associated with the first user onthe first display screen associated with the first user if the serverreceives the second indication that the second user applied the secondgesture to the second display screen associated with the second userduring the transitory display period, wherein modifying includes theserver providing first indicia indicating that only the first userprovided the first indication and that there was no second indicationand therefore only the first user preserved the text entry or secondindicia in response to the first indication and the second indication toindicate that both the first user and the second user preserved the textentry.
 6. The system of claim 5 wherein the transitory display period isa single digit number of seconds.
 7. A system comprising: a processor;at least one memory storing instructions that when executed, configurethe processor to perform operations to maintain a first message threadand a second message thread between a first user and a second user, theoperations comprising: directing, by the server, a second client deviceto display a text entry of the second message thread for a duration of atransitory display period, wherein the text entry is from the first userand is presented on a second display screen associated with the secondclient device of the second user, and wherein the first user generatesthe text entry without a first indication to preserve the text entry inthe first message thread; automatically deleting at the server the textentry in the first message thread and the text entry of the secondmessage thread after the duration of the transitory display periodunless a second indication of a second gesture applied to the seconddisplay screen presenting the text entry of the message thread on thesecond client device associated with the second user is received at theserver during the transitory display period, in which case the textentry of the message thread is maintained by the server for the secondmessage thread and the server provides feedback to the first user thatthe text entry of the second message thread is preserved; and restoringthe text entry of the first message thread associated with the firstuser on the first display screen associated with the first user if theserver receives the second indication that the second user applied thesecond gesture to the second display screen associated with the seconduser during the transitory display period, wherein the restoringincludes the server providing indicia indicating that only the seconduser provided the second indication.
 8. The system of claim 7 whereinthe transitory display period is a single digit number of seconds.